
#include "SoundEffectInstance.h"

#include <System/Diagnostics/Debug.h>
#include <System/Threading/Thread.h>

using namespace Riccsson::System;
using namespace Riccsson::System::Diagnostics;
using namespace Riccsson::Xna::Framework::Audio;


void SoundEffectInstance::onBufferNeeded()
{
	// This methods is virutal and should be overrided by an subclass.
}
void SoundEffectInstance::init(int sampleRate, AudioChannels channels)
{

}

SoundEffectInstance::SoundEffectInstance()
	: PROP3GET_INIT(SoundEffectInstance, IsDisposed)
	, PROP3_INIT(SoundEffectInstance, IsLooped)
	, PROP3_INIT(SoundEffectInstance, Pan)
	, PROP3_INIT(SoundEffectInstance, Pitch)
	, PROP3GET_INIT(SoundEffectInstance, State)
	, PROP3_INIT(SoundEffectInstance, Volume)
{
	init(44100, AudioChannels::Stereo);
}

void SoundEffectInstance::Apply3D(AudioListener* listener, AudioEmitter* emitter)
{

}

void SoundEffectInstance::Apply3D(Riccsson::System::Array<AudioListener>* listeners, AudioEmitter* emitter)
{

}

void SoundEffectInstance::Dispose()
{

}

void SoundEffectInstance::Dispose(bool disposing)
{

}

void SoundEffectInstance::Pause()
{

}

void SoundEffectInstance::Play()
{

}

void SoundEffectInstance::Resume()
{

}

void SoundEffectInstance::Stop()
{

}

void SoundEffectInstance::Stop(bool immediate)
{

}
